-include ../common/common.mk

SRAOS			 := sraos
RPMDIR		 := rpm-build
SIERRA_DIR := $(RPMDIR)/var/www/sierra
SRAOS_DIR	 := $(SIERRA_DIR)/app/sraos

.PHONY: all
all: setup repodata/repomd.xml teardown

.PHONY: rpm
rpm: ${RPMDIR}/${SRAOS}.tgz .rpmmacros
	mkdir -p ${RPMDIR}/tmp
	HOME=$(CURDIR) rpmbuild --clean -bb --target i386 ./etc/sierra-os.spec

.rpmmacros: Makefile
	echo '%_topdir			$(CURDIR)/$(RPMDIR)' > $@
	echo '%_tmpdir			$(CURDIR)/$(RPMDIR)/tmp' >> $@
	echo '%_builddir		$(CURDIR)/$(RPMDIR)/tmp' >> $@
	echo '%_sourcedir	 $(CURDIR)/$(RPMDIR)' >> $@
	echo '%_specdir		 $(CURDIR)/spec' >> $@
	echo '%_rpmdir			$(CURDIR)' >> $@
	echo '%_build_name_fmt	%%{NAME}.rpm' >> $@

.PHONY: clean
clean:
	rm -rf *.rpm rpm-build .rpmmacros repodata

setup:
	rm -rf $(RPMDIR)
	mkdir -p $(SRAOS_DIR)
	rm -rf repodata
	mkdir -p repodata

teardown:
	rm -rf $(RPMDIR)
	rm -f sierra-os-debuginfo.rpm
	rm -rf repodata
	rm -f .rpmmacros

repodata/repomd.xml: rpm
	createrepo .

${RPMDIR}/${SRAOS}.tgz:
	cp -r bin $(SRAOS_DIR)
	cp -r etc $(SRAOS_DIR)
	rm -f $(SRAOS_DIR)/etc/.install
	rm -f $(SRAOS_DIR)/etc/.release
	rm -f $(SRAOS_DIR)/etc/sierra-os.spec
	rm -f $(SRAOS_DIR)/etc/l10n/custom.properties
	rm -rf $(SRAOS_DIR)/etc/plugins
	cp -r lib $(SRAOS_DIR)
	rm -rf $(SRAOS_DIR)/lib/model
	rm -rf $(SRAOS_DIR)/lib/plugins
	mkdir -p $(SRAOS_DIR)/plugins
	cp -r plugins/core $(SRAOS_DIR)/plugins
	cp -r www $(SRAOS_DIR)
	rm -rf $(SRAOS_DIR)/www/html/plugins
	rm -rf $(SRAOS_DIR)/www/tpl/plugins
	cd $(SRAOS_DIR) && find . -depth -name ".svn" -exec rm -rf '{}' \;
	cd ${RPMDIR} && tar -czf $(SRAOS).tgz var && rm -rf var
